package com.zackeus.xupdate.factory;

import androidx.annotation.NonNull;

import com.zackeus.xupdate.entity.LibraryUpdateEntity;

import java.util.Map;

/**
 * 版本更新工厂
 * @name: IUpdateNetWorkService
 * @author: zz
 * @date: 2022/11/17
 */
public interface IUpdateFactory {

    /**
     * 构建更新实体
     * @param params   参数
     * @param callBack 回调
     */
    void newUpdate(@NonNull Map<String, Object> params, @NonNull Callback callBack);

    /**
     * 网络请求回调
     */
    interface Callback {
        /**
         * 结果回调
         * @param entity 结果
         */
        void onSuccess(LibraryUpdateEntity entity);

        /**
         * 错误回调
         * @param throwable 错误提示
         */
        void onError(Throwable throwable);
    }
}
